Skip to content

Fix OTEL/Tempo Jobs parameters - #80115

Closed
pavolloffay wants to merge 1 commit into
openshift:mainfrom
pavolloffay:fix-branch-param
Closed

Fix OTEL/Tempo Jobs parameters#80115
pavolloffay wants to merge 1 commit into
openshift:mainfrom
pavolloffay:fix-branch-param

Conversation

@pavolloffay

@pavolloffay pavolloffay commented Jun 4, 2026

Copy link
Copy Markdown
Member

Summary by CodeRabbit

This PR adds support for parameterizing OpenTelemetry and Tempo operator test configurations through the Gangway API by introducing override environment variables.

What Changed:

The PR modifies the stage test jobs for OpenTelemetry and Tempo distributed tracing operators to accept branch overrides via Gangway API's pod_spec_options.envs mechanism.

For OpenTelemetry tests:

  • The distributed-tracing-tests-opentelemetry-stage-commands.sh script now checks for MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH and uses it to set OTEL_TESTS_BRANCH if present
  • The distributed-tracing-tests-opentelemetry-stage-ref.yaml stage configuration documents the new MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH parameter with instructions for Gangway API usage
  • When both variables are set, the override parameter takes precedence
  • Error messages were updated to inform users about the Gangway API option

For Tempo tests:

  • Identical changes applied: MULTISTAGE_PARAM_OVERRIDE_TEMPO_TESTS_BRANCH parameter added to both the commands script and the stage ref configuration
  • Same precedence and documentation patterns as OpenTelemetry

Impact:

This enables operators and CI engineers to dynamically override the test operator branch at runtime without modifying job configurations, providing greater flexibility when running tests through Gangway workflows. The override parameters follow OpenShift's MULTISTAGE_PARAM_OVERRIDE_ naming convention for compatibility with Gangway's pod spec options mechanism.

Signed-off-by: Pavol Loffay <p.loffay@gmail.com>
@coderabbitai

coderabbitai Bot commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: d210e2b5-2e77-4321-9166-a8db7f98eddc

📥 Commits

Reviewing files that changed from the base of the PR and between f88da0c and deb52ab.

📒 Files selected for processing (4)
  • ci-operator/step-registry/distributed-tracing/tests/opentelemetry/stage/distributed-tracing-tests-opentelemetry-stage-commands.sh
  • ci-operator/step-registry/distributed-tracing/tests/opentelemetry/stage/distributed-tracing-tests-opentelemetry-stage-ref.yaml
  • ci-operator/step-registry/distributed-tracing/tests/tempo/stage/distributed-tracing-tests-tempo-stage-commands.sh
  • ci-operator/step-registry/distributed-tracing/tests/tempo/stage/distributed-tracing-tests-tempo-stage-ref.yaml

Walkthrough

This PR adds Gangway API support for overriding test branch selection in distributed-tracing test stages by introducing new MULTISTAGE_PARAM_OVERRIDE_*_TESTS_BRANCH environment variables. Both OpenTelemetry and Tempo stage implementations gain conditional logic to prioritize these overrides when set.

Changes

Branch Override Parameters for Distributed-Tracing Stages

Layer / File(s) Summary
OpenTelemetry stage branch override
ci-operator/step-registry/distributed-tracing/tests/opentelemetry/stage/distributed-tracing-tests-opentelemetry-stage-commands.sh, ci-operator/step-registry/distributed-tracing/tests/opentelemetry/stage/distributed-tracing-tests-opentelemetry-stage-ref.yaml
Adds conditional logic to copy MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH into OTEL_TESTS_BRANCH when present, with updated error messaging. The stage reference defines the new parameter with documentation explaining Gangway API usage and override precedence.
Tempo stage branch override
ci-operator/step-registry/distributed-tracing/tests/tempo/stage/distributed-tracing-tests-tempo-stage-commands.sh, ci-operator/step-registry/distributed-tracing/tests/tempo/stage/distributed-tracing-tests-tempo-stage-ref.yaml
Adds conditional logic to copy MULTISTAGE_PARAM_OVERRIDE_TEMPO_TESTS_BRANCH into TEMPO_TESTS_BRANCH when present, with updated error messaging. The stage reference defines the new parameter with documentation explaining Gangway API usage and override precedence.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

  • openshift/release#80005: Both PRs update distributed-tracing stage scripts to control branch selection for OpenTelemetry and Tempo tests, with this PR adding Gangway API override support alongside related branch requirement changes.

Suggested labels

lgtm

Suggested reviewers

  • andreasgerstmayr
🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Fix OTEL/Tempo Jobs parameters' directly reflects the main change: adding support for override parameters (MULTISTAGE_PARAM_OVERRIDE_OTEL_TESTS_BRANCH and MULTISTAGE_PARAM_OVERRIDE_TEMPO_TESTS_BRANCH) across four configuration files for distributed tracing tests.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed No Ginkgo test files or test name definitions exist in this PR. Changes are CI config scripts and YAML/JSON files, making this check not applicable.
Test Structure And Quality ✅ Passed PR contains only shell scripts and YAML config files, not Ginkgo test code. Check is not applicable to this type of infrastructure/CI configuration change.
Microshift Test Compatibility ✅ Passed PR modifies CI/CD config files (YAML refs and shell scripts), not Ginkgo e2e tests. Custom check only applies to new Go test files with Ginkgo definitions.
Single Node Openshift (Sno) Test Compatibility ✅ Passed PR only modifies CI/CD infrastructure configuration; no new Ginkgo e2e tests are added, so SNO compatibility check does not apply.
Topology-Aware Scheduling Compatibility ✅ Passed PR only modifies CI test step registry parameter documentation and environment variable overrides, with no deployment manifests or scheduling constraints.
Ote Binary Stdout Contract ✅ Passed PR modifies only CI operator shell scripts and YAML configuration files; no OTE binary code or process-level stdout writes to JSON protocol are present.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed PR contains no new Ginkgo e2e tests; modified files are CI/CD configuration scripts and YAML registry files that orchestrate external test execution. Check applies only to new test code additions.
No-Weak-Crypto ✅ Passed No weak crypto algorithms, custom implementations, or non-constant-time secret comparisons found. Changes are configuration and environment variable overrides only.
Container-Privileges ✅ Passed No privileged container settings found: no privileged: true, hostPID/hostNetwork/hostIPC, SYS_ADMIN capability, or allowPrivilegeEscalation settings detected in any modified files.
No-Sensitive-Data-In-Logs ✅ Passed All logging statements in the PR are safe: they log test names or static messages only. No passwords, tokens, API keys, PII, session IDs, hostnames, or customer data are exposed.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-ci

openshift-ci Bot commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: pavolloffay

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 4, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@pavolloffay: the pj-rehearse plugin accommodates running rehearsal tests for the changes in this PR. Expand 'Interacting with pj-rehearse' for usage details. The following rehearsable tests have been affected by this change:

Test name Repo Type Reason
periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.12-stage-tempo-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.19-stage-opentelemetry-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.17-fips-stage-tempo-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.14-arm-stage-opentelemetry-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.19-stage-tempo-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.20-stage-tempo-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.14-stage-opentelemetry-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.17-ibm-p-stage-opentelemetry-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.16-ibm-z-stage-tempo-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.16-ibm-z-stage-opentelemetry-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.21-stage-opentelemetry-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.20-stage-opentelemetry-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.12-stage-opentelemetry-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-open-telemetry-opentelemetry-operator-main-opentelemetry-product-ocp-4.17-fips-stage-opentelemetry-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.21-stage-tempo-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.14-stage-tempo-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.17-ibm-p-stage-tempo-stage-tests N/A periodic Registry content changed
periodic-ci-openshift-grafana-tempo-operator-main-tempo-product-ocp-4.14-arm-stage-tempo-stage-tests N/A periodic Registry content changed

Prior to this PR being merged, you will need to either run and acknowledge or opt to skip these rehearsals.

Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@openshift-ci

openshift-ci Bot commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

@pavolloffay: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@openshift-ci

openshift-ci Bot commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

PR needs rebase.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@openshift-ci openshift-ci Bot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jun 7, 2026
@pavolloffay pavolloffay closed this Jun 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant